hpr1499 :: How I Got Into Computers
Audio Item Preview
Share or Embed This Item
- Publication date
- 2014-05-01
- Topics
- DEC, PDP-11/20, ASR-33, RSTS-11, BASIC, FORTRAN, Pascal, VAX-11/780, Ultrix, Linux, Ubuntu, Gentoo, Slackware
- Contributor
- HackerPublicRadio
- Language
- English
Summary: linux, computing, minicomputers, Fortran, COBOL, Pascal, Basic
Series: How I got into tech
Source: http://hackerpublicradio.org/eps.php?id=1499
Series: How I got into tech
Source: http://hackerpublicradio.org/eps.php?id=1499
HPR Episode: How I Got Into Computers
1. Got into computers in 1974 in high school.
- School had a DEC PDP-11/20 minicomputer
* Two ASR-33 Teletype terminals, keypunch, line printer, card sorter
* Ran older operating system RSTS-11 v4a
- Too low-end to run anything more recent.
- 16K words of core memory: point-to-point wired "cores"
- The system was somewhat rudimentary. It's idea of a prompt was:
READY
- A Teletype terminal does not have a screen, so the print head
was the only "cursor" to let you know where you are.
Hardware:
PDP-11/20: Computer Museum
https://www.computerhistory.org/revolution/minicomputers/11/366/1946
PDP-11/20: Retro Technology
https://www.retrotechnology.com/pdp11/exhibit/PDP_11_infoage_1.htm
ASR Model 33 Teletype with PDP-11 model computers
https://www.retrotechnology.com/pdp11/
Operating System:
RSTS-11 System Managers Guide
https://bitsavers.trailing-edge.com/pdf/dec/pdp11/rsts/V04/DEC-11-ORSMA-B-D_RSTSmgr_73.pdf
RSTS-11 System Users Guide
https://bitsavers.trailing-edge.com/pdf/dec/pdp11/rsts/V06/DEC-11-ORSUA-D-D_RSTS_SystemUserGuide_Jul75.pdf
2. Learned BASIC-Plus to get anywhere, starting with 1/2-year course
DEC BASIC Plus Language Manual
https://bitsavers.trailing-edge.com/pdf/dec/pdp11/rsts/V04/DEC-11-ORBPA-A-D_BASIC-PLUS_LangMan_Oct72.pdf
* Course was taught by a math teacher who was not an amazing programmer,
but he was a great teacher. He enabled us to get going with BASIC.
* Anticipated pairs programming by working on programs with a friend as
"Chuck and Duck Enterprises", but we were mainly having fun.
- Started by necessity (1 TTY), but we got satisfying results faster
- Both of us could write code, but we learned about using
complementary strengths to get cool stuff done.
Pairs programming:
Pairs Programming, from XP
https://www.extremeprogramming.org/rules/pair.html
Laurie Williams (Her other stuff is good, too)
https://collaboration.csc.ncsu.edu/laurie/publications.html
* Small memory --> innovation
- ASCII Art "Poster" Program:
Create banner with block letters on LP based on terminal input.
- Developed a mini-language to encode characters, white space,
newlines for each supported character.
- This was a special-purpose language used to compress data, rather
than a cool Domain-Specific Language (DSL).
- We just wanted to make cool banners to come off the line printer.
Domain Specific Languages: Why ours wasn't a DSL
Martin Fowler on DSLs
https://martinfowler.com/tags/domain%20specific%20language.html
3. Did a math major in college, after switching away from Comp. Sci.
* Math had advantages for me
- More flexible curriculum
- Abstractions of the time were more fun to play with
* I used the University computers on jobs as research assistant, tutor, typist
- Used them in course work, too.
- Planning my code carefully let me use my excess CPU seconds for fun
- Rule of Thumb: 1 hour in library is worth 12 hours at the terminal.
4. Branching out in hardware, systems and programming languages
* We learned FORTRAN in the programming courses
- I resisted the temptation to "think in FORTRAN"
- More general approach felt slower for getting individual jobs done.
- Working from first principles seemed more reliable
- Often gave me better solutions than following my nose in FORTRAN
Quirky FORTRAN Preprocessor for Structured Programming (SF/K)
https://www.worldcat.org/title/fundamentals-of-structured-programming-using-fortran-with-sfk-and-watfiv-s/oclc/301094243
* Later, I picked up Pascal and TOPS-20 Assembly Language
Pascal: From the source
Pascal User Manual and Report (Springer) Trade paperback (1975)
by Kathleen Jensen, K Jensen, N Wirth
Trade paperback, Springer, 1975. English 2nd ed. 167 pages
ISBN: 0387901442 ISBN-13: 9780387901442
5. Gear and software rundown:
* Xerox/Honeywell Sigma Six (descended from Scientific Data Systems)
(1977 to 1979)
https://en.wikipedia.org/wiki/CP-V_operating_system
https://en.wikipedia.org/wiki/SDS_Sigma_series
* DEC System 2060 (relabeled PDP-10) running TOPS-20 on a 36-bit machine
(1979 to 1981)
https://bitsavers.trailing-edge.com/pdf/dec/pdp10/TOPS20/DECnet-20/AA-5091B-TM_TOPS-20_DECnet-20_Programmers_Guide_Jan80.pdf
https://pdp10.nocrew.org/docs/ad-h391at1.pdf DECsystem-10 and -20 Processor Ref.
6. Summer and Night Job
* The Duration Caper:
Friend fixing a Fortran program to compute bond duration on a large portfolio.
- Answers weren't coming out, so he printed out several subtotals in his calculation.
- "Extend the line" to include the last term in the numerator of one big fraction "and you'll have it"
Found a typo in the Jack Clark Francis "bible" of investments theory
- Throwaway question: "What's this duration stuff, anyway?"
- Question got me hired as a research assistant by Finance department in Business school
Investments: Analysis and Management, First Edition Hardcover(1972)
by Jack Clark Francis. McGraw-Hill Book Company
ISBN: 0070217858 ISBN-13: 9780070217850
* The "Sure! I Know Assembly Language" Caper
Offered a job with Finance, conditional on first assignment.
- Take over maintenance of a Fortran program with inline Assembly Language
- Original developer was a senior Computer Science major I knew.
- Gambled that his code was solid. And won in the end.
Got paid 3 times minimum wage ($7.50/hour versus $2.30) to look up and read research papers.
- I'd have done it for free, so this was a sweet gig.
* Other jobs:
- Tutoring math, computer science for food or cash
- Programming jobs
- Teaching assistant jobs for statistics, finance courses
- Security and management of student-run darkroom in Summer months == "reading"
- Typing papers on a typewriter
7. After college, started working in non-life insurance.
* End user computing in actuarial group was in BASIC-Plus on PDP-11s
- Word processing was in DECword or the WPS-8 dedicated machine.
- After first year, moved to department-level PDP-11/44
- For heavy-duty jobs, we also had timesharing access to VAX-11/780
* First project was building a database from mainframe data dump
- EBCDIC data conversion to ASCII led to my education about signed
data fields in COBOL.
- I knew hexadecimal math from my assembly language course
- I'd seen EBCDIC in dumps while writing FORTRAN on CP-V
Data dumps from 9-track to PDP-11/70 led to Overpunch field conversion
https://www.3480-3590-data-conversion.com/article-signed-fields.html
* Note: When you have curly braces at the end of a signed number field,
the brace opens in the direction of the positive or negative end of
the number line.
- Open brace ({): Value ends in zero and has positive sign. Zero < X
- Closing brace (}): Value ends in zero and is negative. Zero > X
* If field ends in A, the value's final digit is 1, and it's positive
- B means positive value that ends with a 2, C is 3, ... I is 9.
- So "00003757D" is $ +375.74.
* If the field ends in J-R, the value is negative and ends in 1-9.
- So "00000255R" is the value $ -25.59.
8. Irony: I was asked to help troubleshoot a program that was crashing
as it was automatically converting the rates and rules manuals away
from Unix with 'nroff' to DECword on RSTS in 1982.
- This may have delayed my adoption of Linux
- Used Unix (Ultrix) in early 1990s to preprocess data for use in OS/2
- Had to move to Win 95 and Win NT for work
****** Skipping the Dark Period of DOS/Windows and OS/2 Computing ******
- Turbo Pascal, APL, PICK, QuickBasic, Visual Basic, Excel with VBA
- Learned SQL dialects, COM, .Net, and scripting languages
More from Dark Period: Less Slackware
8. Gave Linux a try with Quantian Live CD in 2006 (Thanks, Dirk!)
https://dirk.eddelbuettel.com/quantian.html
https://dirk.eddelbuettel.com/quantian-tmp.pdf (PDF description)
https://dirk.eddelbuettel.com/quantian/quantian_0.7.9.2.quantian.packages.txt
* Used Live CDs to try Debian packages, repair PCs, and do math stuff
- Liked Gnumeric, Python, R, and educational software
- Wiped my Vista laptop in April, 2008 to install Ubuntu full-time
- Music, checking, and photo editing kept me from switching other PCs
9. Tried Ubuntu "Feisty" using WUBI on Windows XP on Racing Cow
* Trouble-free install, mainly because I was on an Ethernet cable
- Tried out Linux software in a risk-free environment to find what I liked
- GNOME 2 was close enough to Windows and Mac, so no problems with UI
- Command line was similar to Ultrix and even to DOS, so not so bad.
* WUBI let me try Ubuntu without having to dual boot or use Live CDs
- Easy to install and remove, like a Windows application
- No messy virtualization setup
- Linux could see and use files on my Windows partition seamlessly
* Ubuntu "Hardy" on "Titanic" (retired Dell Latitude D820 laptop)
- Install was easy, except for wireless networking
- Had to use NDISWRAPPER at first, but everything worked.
* Switched my main home desktop (Racing Cow) in April, 2011
- Just in time for Unity, which would not run on my gear.
- Gnome 2 ran well on my computers, and they choked on Unity and Gnome 3.
- Taste and older machines led me to go distro hopping.
- Dan Lynch of Linux Outlaws pointed me to CrunchBang. Try it.
https://crunchbang.org
9. Other distros I've tried:
* Gentoo (June 2011): https://www.gentoo.org
Note: It is not as super-hard as you've been told.
Installed it in three 4-hour sessions after reading docs on train
- Compiled kernel on first shot
- Added modules for devices I liked, and that recompile worked
- Got X working enough to use a browser and a window manager
- Gave up only because I had not decided on my workflows
- Was afraid to mix GTK and QT or KDE packages at that stage
- Unsure about reversing wrong choices
- Unfamiliar toolkits scared me, although I had no real problems
Conclusion: My problem with Gentoo? Between keyboard and chair.
* Slackware (several times): https://www.slackware.org
Always installs on first try for me, with huge kernel
- Knowing what to do after initial install was the problem here, too
- To remove fear, I updated my 13.37 with all patches by hand
- Manual updates after install took 2 hours, including learning pkgtool
- Using generic or custom kernels is only hard when I'm stupid
* Be sure the drivers to operate your boot disk are compiled in
Conclusion: After hating older versions, it's KDE 4 for the win!
* SlackerMedia book: https://slackermedia.info
Helpful tips on designing workstation around workflows
- Uses SlackBuilds and SlackBuild queues for repeatable configuration
- Gave me idea for groups working on math software-in-progress
- Slackware package format is simple, easy to grasp (for binaries)
- SlackBuilds: close to a universal format for sharing program source
Why Slackware?
- There are SlackBuild scripts for Sage and other packages I like
- Slackware comes with support for TeX for math writing
- SlackerMedia has queues for audio, video, web editing, publishing
Conclusion: SlackerMath is born. Still needs to be fleshed out.
- Slackware distribution-from-scratch based on SlackBuilds
- Set it up as you wish using your own custom queues
- Suggested packages would include Sage, R, Octave, GSL, QuantLib,
Grass GIS, kile, gretl, Tux Racer, euler, gnucap, and others
- Languages: Python with NumPy/SciPy/matplotlib and bindings to
other languages/libraries, Scheme, Perl, Lua, C and Fortran
* Also tried the following, but didn't stay with them
- Slax (www.slax.org)
-
11. Right now:
* Five of our six former Windows computers have switched to Linux.
- "Surfing Cow" decommissioned with CrunchBang as its final O/S.
- "Racing Cow" still going strong with CrunchBang
- Sony FE laptop "White Cloud" running Ubuntu 13.04
- Derringer is my audio editing machine, because it's under 3 lbs.
- Laptop "Titanic" died after a baptism in red wine
Back to life with new keyboard, disk, and name -- "Lazarus"
* Number six ("Dawn Pixie") about to go to a Linux "granny" distro
- Linux Mint or PCLinuxOS (KDE version)
- Need a "granny" distros for generic use by all comers
- Addeddate
- 2014-06-23 15:55:21
- Boxid
- OL100020109
- Identifier
- hpr1499
comment
Reviews
Reviewer:
rcasey56
-
favoritefavoritefavoritefavorite -
May 1, 2023
Subject: Very Interesting Stuff
Subject: Very Interesting Stuff
This is interesting and a few years before I got started into computers. I went to a "Trade School" after high school in late 1970's to learn computer operations on an IBM 360-30. As he mentions in the text the computer had no terminal and a keyboard was the main entry into the computer. I progressed into COBOL, Assembler, RPGII and associated languages and IBM 3272 terminals which eventually became 3278 color terminals(green,white and red). I still work in IT which was originally known as "Data Processing".
Thanks for the memories!
Thanks for the memories!
474 Views
2 Favorites
DOWNLOAD OPTIONS
IN COLLECTIONS
Hacker Public RadioUploaded by HackerPublicRadio on